package lumis.portal.device;

import java.util.Map;

import lumis.portal.IPortalRequestContextEntry;
import lumis.portal.stability.StableMinor;

/**
 * Represents the device informations
 *
 * @version $Revision: 13093 $ $Date: 2011-05-28 18:40:18 -0300 (Sat, 28 May 2011) $
 * @since 6.0.0
 */
@StableMinor(version = "6.0.0", sinceVersion = "6.0.0")
public interface IDevice extends IPortalRequestContextEntry
{

	/**
	 * Returns string representing the device's user agent
	 * @return string representing the device's user agent
	 * @throws Exception
	 */
	public String getUserAgent();

	/**
	 * Returns string representing the device's capability
	 * @param capability to be looked up
	 * @return string representing the device's capability
	 */
	public String getCapability(String capability);

	/**
	 * Returns the device's capability map.
	 * @return the device's capability map.
	 */
	public Map<String, String> getCapabilities();

}